/**
 * Generate time : 2011-06-22 9:36:07
 * Version : 1.0.1.V20070717
 */
package com.baosight.sczx.zm.cm.domain;

import com.baosight.iplat4j.util.NumberUtils;
import com.baosight.iplat4j.core.ei.EiColumn;
import com.baosight.iplat4j.ep.DaoEPBase;
import java.util.HashMap;
import java.util.Map;
import com.baosight.iplat4j.util.StringUtils;

/**
 * ZMCMExportApplication
 * 
 */
public class ZMCMExportApplication extends DaoEPBase {

	private String fdKeyId = " "; /* 主键 */
	private String fdApplicationCode = " "; /* 领料单号 */
	private String fdYear = " "; /* 领料归属年 */
	private String fdMonth = " "; /* 领料归属月 */
	private String fdApplicationDepartment = " "; /* 申请单位 */
	private String fdApplicationDepartmentName = " "; /* 申请单位 */
	private String fdApplicationDate = " "; /* 领料日期 */
	private String fdEditor = " "; /* 编制人 */
	private String fdApplicationStatus = " "; /* 申请状态 */
	private String fdAuditor = " "; /* 审批人 */
	private String fdRemark = " "; /* 备注 */
	private Double fdApplicationSum = new Double(0); /* 申请金额 */
	private String fdStatus = " "; /* 领用状态 */
	private String fdName = " ";/* 公共选择框-工程 */
	// 新加列
	private String fdApplicationType = "";// 领料类型
	private String fdMaterialCode = "";// 物资编码
	private String fdMaterialName = "";// 物资名称
	private String fdSpecModel = "";// 规格型号
	private String fdNumber = "";// 图号
	private String fdQuality = "";// 材质
	private String fdMetric = "";// 计量单位
	// private String fdStatus ="";//领料状态
	private Double fdApplicationNumber = new Double(0);// 申请数量

	public String getFdName() {
		return fdName;
	}

	public void setFdName(String fdName) {
		this.fdName = fdName;
	}

	/**
	 * initialize the metadata
	 */
	public void initMetaData() {
		EiColumn eiColumn;

		eiColumn = new EiColumn("fdKeyId");
		eiColumn.setPrimaryKey(true);
		eiColumn.setFieldLength(32);
		eiColumn.setDescName("主键");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdApplicationCode");
		eiColumn.setFieldLength(30);
		eiColumn.setDescName("领料单号");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdYear");
		eiColumn.setFieldLength(4);
		eiColumn.setDescName("领料归属年");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdMonth");
		eiColumn.setFieldLength(2);
		eiColumn.setDescName("领料归属月");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdApplicationDepartment");
		eiColumn.setFieldLength(32);
		eiColumn.setDescName("申请单位");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdApplicationDepartmentName");
		eiColumn.setFieldLength(32);
		eiColumn.setDescName("申请单位名称");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdApplicationDate");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("领料日期");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdEditor");
		eiColumn.setFieldLength(32);
		eiColumn.setDescName("编制人");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdApplicationStatus");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("申请状态");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdStatus");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("领用状态");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdAuditor");
		eiColumn.setFieldLength(32);
		eiColumn.setDescName("审批人");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdRemark");
		eiColumn.setFieldLength(200);
		eiColumn.setDescName("备注");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdApplicationSum");
		eiColumn.setType("N");
		eiColumn.setScaleLength(5);
		eiColumn.setFieldLength(15);
		eiColumn.setDescName("申请金额");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdName");
		eiColumn.setFieldLength(50);
		eiColumn.setDescName("工程名称");
		eiMetadata.addMeta(eiColumn);
		// //////////////////////////
		eiColumn = new EiColumn("fdApplicationType");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("领料类型");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdMaterialCode");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("物资编码");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdMaterialName");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("物资名称");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdMetric");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("计量单位");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdSpecModel");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("规格型号");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdNumber");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("图号");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdQuality");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("材质");
		eiMetadata.addMeta(eiColumn);

		eiColumn = new EiColumn("fdApplicationNumber");
		eiColumn.setFieldLength(10);
		eiColumn.setDescName("申请数量");
		eiMetadata.addMeta(eiColumn);

	}

	/**
	 * the constructor
	 */
	public ZMCMExportApplication() {
		initMetaData();
	}

	/**
	 * get the fdKeyId - 主键
	 * 
	 * @return the fdKeyId
	 */
	public String getFdKeyId() {
		return this.fdKeyId;
	}

	/**
	 * set the fdKeyId - 主键
	 */
	public void setFdKeyId(String fdKeyId) {
		this.fdKeyId = fdKeyId;
	}

	/**
	 * get the fdApplicationCode - 领料单号
	 * 
	 * @return the fdApplicationCode
	 */
	public String getFdApplicationCode() {
		return this.fdApplicationCode;
	}

	/**
	 * set the fdApplicationCode - 领料单号
	 */
	public void setFdApplicationCode(String fdApplicationCode) {
		this.fdApplicationCode = fdApplicationCode;
	}

	/**
	 * get the fdYear - 领料归属年
	 * 
	 * @return the fdYear
	 */
	public String getFdYear() {
		return this.fdYear;
	}

	/**
	 * set the fdYear - 领料归属年
	 */
	public void setFdYear(String fdYear) {
		this.fdYear = fdYear;
	}

	/**
	 * get the fdMonth - 领料归属月
	 * 
	 * @return the fdMonth
	 */
	public String getFdMonth() {
		return this.fdMonth;
	}

	/**
	 * set the fdMonth - 领料归属月
	 */
	public void setFdMonth(String fdMonth) {
		this.fdMonth = fdMonth;
	}

	/**
	 * get the fdApplicationDepartment - 申请单位
	 * 
	 * @return the fdApplicationDepartment
	 */
	public String getFdApplicationDepartment() {
		return this.fdApplicationDepartment;
	}

	/**
	 * set the fdApplicationDepartment - 申请单位
	 */
	public void setFdApplicationDepartment(String fdApplicationDepartment) {
		this.fdApplicationDepartment = fdApplicationDepartment;
	}

	/**
	 * get the fdApplicationDepartmentName - 申请单位名称
	 * 
	 * @return the fdApplicationDepartmentName
	 */
	public String getFdApplicationDepartmentName() {
		return this.fdApplicationDepartmentName;
	}

	/**
	 * set the fdApplicationDepartmentName - 申请单位名称
	 */
	public void setFdApplicationDepartmentName(String fdApplicationDepartmentName) {
		this.fdApplicationDepartmentName = fdApplicationDepartmentName;
	}

	/**
	 * get the fdApplicationDate - 领料日期
	 * 
	 * @return the fdApplicationDate
	 */
	public String getFdApplicationDate() {
		return this.fdApplicationDate;
	}

	/**
	 * set the fdApplicationDate - 领料日期
	 */
	public void setFdApplicationDate(String fdApplicationDate) {
		this.fdApplicationDate = fdApplicationDate;
	}

	/**
	 * get the fdEditor - 编制人
	 * 
	 * @return the fdEditor
	 */
	public String getFdEditor() {
		return this.fdEditor;
	}

	/**
	 * set the fdEditor - 编制人
	 */
	public void setFdEditor(String fdEditor) {
		this.fdEditor = fdEditor;
	}

	/**
	 * get the fdApplicationStatus - 申请状态
	 * 
	 * @return the fdApplicationStatus
	 */
	public String getFdApplicationStatus() {
		return this.fdApplicationStatus;
	}

	/**
	 * set the fdApplicationStatus - 申请状态
	 */
	public void setFdApplicationStatus(String fdApplicationStatus) {
		this.fdApplicationStatus = fdApplicationStatus;
	}

	/**
	 * get the fdAuditor - 审批人
	 * 
	 * @return the fdAuditor
	 */
	public String getFdAuditor() {
		return this.fdAuditor;
	}

	/**
	 * set the fdAuditor - 审批人
	 */
	public void setFdAuditor(String fdAuditor) {
		this.fdAuditor = fdAuditor;
	}

	/**
	 * get the fdRemark - 备注
	 * 
	 * @return the fdRemark
	 */
	public String getFdRemark() {
		return this.fdRemark;
	}

	/**
	 * set the fdRemark - 备注
	 */
	public void setFdRemark(String fdRemark) {
		this.fdRemark = fdRemark;
	}

	/**
	 * get the fdApplicationSum - 申请金额
	 * 
	 * @return the fdApplicationSum
	 */
	public Double getFdApplicationSum() {
		return this.fdApplicationSum;
	}

	/**
	 * set the fdApplicationSum - 申请金额
	 */
	public void setFdApplicationSum(Double fdApplicationSum) {
		this.fdApplicationSum = fdApplicationSum;
	}

	/**
	 * @return the fdApplicationType-领料类型
	 */
	public String getFdApplicationType() {
		return fdApplicationType;
	}

	/**
	 * @param fdApplicationType
	 *            the fdApplicationType to set
	 */
	public void setFdApplicationType(String fdApplicationType) {
		this.fdApplicationType = fdApplicationType;
	}

	/**
	 * @return the fdMaterialCode
	 */
	public String getFdMaterialCode() {
		return fdMaterialCode;
	}

	/**
	 * @param fdMaterialCode
	 *            the fdMaterialCode to set
	 */
	public void setFdMaterialCode(String fdMaterialCode) {
		this.fdMaterialCode = fdMaterialCode;
	}

	/**
	 * @return the fdMaterialName
	 */
	public String getFdMaterialName() {
		return fdMaterialName;
	}

	/**
	 * @param fdMaterialName
	 *            the fdMaterialName to set
	 */
	public void setFdMaterialName(String fdMaterialName) {
		this.fdMaterialName = fdMaterialName;
	}

	/**
	 * @return the fdSpecModel
	 */
	public String getFdSpecModel() {
		return fdSpecModel;
	}

	/**
	 * @param fdSpecModel
	 *            the fdSpecModel to set
	 */
	public void setFdSpecModel(String fdSpecModel) {
		this.fdSpecModel = fdSpecModel;
	}

	/**
	 * @return the fdNumber
	 */
	public String getFdNumber() {
		return fdNumber;
	}

	/**
	 * @param fdNumber
	 *            the fdNumber to set
	 */
	public void setFdNumber(String fdNumber) {
		this.fdNumber = fdNumber;
	}

	/**
	 * @return the fdQuality
	 */
	public String getFdQuality() {
		return fdQuality;
	}

	/**
	 * @param fdQuality
	 *            the fdQuality to set
	 */
	public void setFdQuality(String fdQuality) {
		this.fdQuality = fdQuality;
	}

	/**
	 * @return the fdMetric
	 */
	public String getFdMetric() {
		return fdMetric;
	}

	/**
	 * @param fdMetric
	 *            the fdMetric to set
	 */
	public void setFdMetric(String fdMetric) {
		this.fdMetric = fdMetric;
	}

	/**
	 * @return the fdApplicationNumber
	 */
	public Double getFdApplicationNumber() {
		return fdApplicationNumber;
	}

	/**
	 * @param fdApplicationNumber
	 *            the fdApplicationNumber to set
	 */
	public void setFdApplicationNumber(Double fdApplicationNumber) {
		this.fdApplicationNumber = fdApplicationNumber;
	}

	/**
	 * get the value from Map
	 */
	@SuppressWarnings("rawtypes")
	public void fromMap(Map map) {

		setFdKeyId(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdKeyId")), fdKeyId));
		setFdApplicationCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdApplicationCode")), fdApplicationCode));
		setFdYear(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdYear")), fdYear));
		setFdMonth(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdMonth")), fdMonth));
		setFdApplicationDepartment(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdApplicationDepartment")), fdApplicationDepartment));
		setFdApplicationDepartmentName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdApplicationDepartmentName")), fdApplicationDepartmentName));
		setFdApplicationDate(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdApplicationDate")), fdApplicationDate));
		setFdEditor(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdEditor")), fdEditor));
		setFdApplicationStatus(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdApplicationStatus")), fdApplicationStatus));
		setFdAuditor(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdAuditor")), fdAuditor));
		setFdRemark(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdRemark")), fdRemark));
		setFdApplicationSum(NumberUtils.toDouble(StringUtils.toString(map.get("fdApplicationSum")), fdApplicationSum));
		setFdStatus(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdStatus")), fdStatus));
		setFdName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdName")), fdName));
		// /////////////////////////////////////////////////////////////////////////////////////////////
		setFdApplicationType(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdApplicationType")), fdApplicationType));
		setFdMaterialCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdMaterialCode")), fdMaterialCode));
		setFdMaterialName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdMaterialName")), fdMaterialName));
		setFdSpecModel(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdSpecModel")), fdSpecModel));
		setFdNumber(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdNumber")), fdNumber));
		setFdQuality(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdQuality")), fdQuality));
		setFdMetric(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdMetric")), fdMetric));
		setFdApplicationNumber(NumberUtils.toDouble(StringUtils.toString(map.get("fdApplicationNumber")), fdApplicationNumber));

	}

	/**
	 * set the value to Map
	 */
	@SuppressWarnings("rawtypes")
	public Map toMap() {

		Map<String, String> map = new HashMap<String, String>();
		map.put("fdKeyId", StringUtils.toString(fdKeyId, eiMetadata.getMeta("fdKeyId")));
		map.put("fdApplicationCode", StringUtils.toString(fdApplicationCode, eiMetadata.getMeta("fdApplicationCode")));
		map.put("fdYear", StringUtils.toString(fdYear, eiMetadata.getMeta("fdYear")));
		map.put("fdMonth", StringUtils.toString(fdMonth, eiMetadata.getMeta("fdMonth")));
		map.put("fdApplicationDepartment", StringUtils.toString(fdApplicationDepartment, eiMetadata.getMeta("fdApplicationDepartment")));
		map.put("fdApplicationDepartmentName", StringUtils.toString(fdApplicationDepartmentName, eiMetadata.getMeta("fdApplicationDepartmentName")));
		map.put("fdApplicationDate", StringUtils.toString(fdApplicationDate, eiMetadata.getMeta("fdApplicationDate")));
		map.put("fdEditor", StringUtils.toString(fdEditor, eiMetadata.getMeta("fdEditor")));
		map.put("fdApplicationStatus", StringUtils.toString(fdApplicationStatus, eiMetadata.getMeta("fdApplicationStatus")));
		map.put("fdAuditor", StringUtils.toString(fdAuditor, eiMetadata.getMeta("fdAuditor")));
		map.put("fdRemark", StringUtils.toString(fdRemark, eiMetadata.getMeta("fdRemark")));
		map.put("fdApplicationSum", StringUtils.toString(fdApplicationSum, eiMetadata.getMeta("fdApplicationSum")));
		map.put("fdStatus", StringUtils.toString(fdStatus, eiMetadata.getMeta("fdStatus")));
		map.put("fdName", StringUtils.toString(fdName, eiMetadata.getMeta("fdName")));
		// /////////////////////////////////////////////////////////////////////////////////////////////
		map.put("fdApplicationType", StringUtils.toString(fdApplicationType, eiMetadata.getMeta("fdApplicationType")));
		map.put("fdMaterialCode", StringUtils.toString(fdMaterialCode, eiMetadata.getMeta("fdMaterialCode")));
		map.put("fdMaterialName", StringUtils.toString(fdMaterialName, eiMetadata.getMeta("fdMaterialName")));
		map.put("fdSpecModel", StringUtils.toString(fdSpecModel, eiMetadata.getMeta("fdSpecModel")));
		map.put("fdNumber", StringUtils.toString(fdNumber, eiMetadata.getMeta("fdNumber")));
		map.put("fdQuality", StringUtils.toString(fdQuality, eiMetadata.getMeta("fdQuality")));
		map.put("fdMetric", StringUtils.toString(fdMetric, eiMetadata.getMeta("fdMetric")));
		map.put("fdApplicationNumber", StringUtils.toString(fdApplicationNumber, eiMetadata.getMeta("fdApplicationNumber")));
		return map;

	}

	public String getFdStatus() {
		return fdStatus;
	}

	public void setFdStatus(String fdStatus) {
		this.fdStatus = fdStatus;
	}
}